1. Field of the Invention
The present invention generally relates to a method, system and program product for validating cached dynamic content web pages in caches located remotely from the server. Specifically, the present invention allows a cached dynamic content web page to be validated without the server having to rebuild or evaluate the web page itself.
2. Related Art
As the use of computers becomes more pervasive, computer users are increasingly relying on computer networks to perform everyday functions. For example, today a computer user can purchase goods/services or obtain information over the Internet. Typically, a computer user will issue a request for a certain web page from a “client” that is received by a “server.” The server will analyze the request, build the web page, and serve the web page to the client. If the same web page is requested at a later time, the serve can reconstruct and retransmit the web page to the client. Unfortunately, retransmission of a dynamic content web page wastes valuable resources when the web page has not changed. Accordingly, a popular technology that helps prevent unnecessary retransmission of web pages is caching. One example of how caching can be utilized to help prevent unnecessary web page retransmission is described in U.S. Pat. No. 6,351,767 ('767), which is commonly assigned with the present application to International Business Machines, Corp. of Armonk, N.Y. and is hereby incorporated by reference.
Under '767, when a web page is originally built and sent to a client, it is also analyzed for cacheability. If it is determined that the web page is cacheable, it is stored in cache memory both on the server and on the client. When the same web page is later requested, the server will first attempt to retrieve the page from its own cache. If the page is not in the server's cache, and the client has communicated to the server that it has a cached version of the page which requires validation, the server will attempt to validate the cached we page through evaluation. Specifically, the server will rebuild the web page and compare time values (i.e., “last modified dates”) of the cached web page to the rebuilt web page. If the time values are the same, the cached web page is still valid and the client can retrieve its cached copy of the web page for display to the user. Conversely, if the time values have changed, the cached web page is stale, and the rebuilt web page is sent to the client. Although such a system avoids unnecessary retransmission of the web page, it nevertheless can consume a large amount of resources of the server in rebuilding the web page to perform the validation. Specifically, as known, a single web page can include content from numerous sources. To rebuild the web page, the server would have to evaluate the page to determine the sources of data and to interface with each source to obtain the necessary content and determine dependencies on additional sources of data. Accordingly, the processing demands on the server are not eased by the caching.
In view of the foregoing, a need exists for a method, system and program product for validating cached dynamic content web pages in remote caches. Specifically, a need exists for a system that can validate a cached dynamic content web page without having to evaluate (rebuild) the web page.